主要資料表與功能:
Roles / Users
管理使用者角色(admin/student/instructor)與帳號資訊,密碼以 Hash 方式儲存。
Cohorts / Enrollments
管理班級期別及學員的選課關係,支援多對多關聯。
Sessions / SessionChanges
每一堂課的安排與異動紀錄,支援狀態(scheduled, changed, cancelled, done)。
Announcements / AnnouncementTargets
公告內容與投放範圍(全站 / 班級 / 單堂課)。
Notifications / ReadReceipts
通知發送與已讀追蹤。
Instructors / Rooms
講師與教室資料。
Attachments
公告與課程的附件管理(檔案上傳 / 連結)。
RecurringSessions / SessionOccurrences
重複課程規則與實際展開的課次。
Tags / EntityTags
公告與課程的標籤系統。
這樣的結構可以讓系統支援:
課程表生成
異動追蹤
精準通知
彈性擴充(未來加新功能不會大幅改動資料表)
版主您好!
看到「課程公告與課表管理系統」專案的啟動,非常期待!這個目標能有效解決資訊分散的問題,讓學員和教師都能即時掌握資訊,真的很實用。技術棧選用 Vue.js、Node.js 與 MySQL,也是業界主流且成熟的選擇,相信能有效率地推動開發。
資料庫 Schema 設計得非常詳盡且有彈性,特別是像「RecurringSessions / SessionOccurrences」這類複雜情境,您都已考量並規劃,是很扎實的基礎!期待後續的開發進度分享,30天挑戰加油!
也歡迎版主有空參考我的系列文「南桃AI重生記」:
https://ithelp.ithome.com.tw/users/20046160/ironman/8311